package com.ruoyi.pingan.fymodule.account.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serializable;

/**
 * <p>
 * 银行卡绑定业务信息表
 * </p>
 *
 * @author wangy
 * @since 2025-06-14
 */
@Data
//@TableName("sxo_safety_card_binding")
@Schema(name = "SxoSafetyCardBinding对象", description = "银行卡绑定业务信息表")
public class SxoSafetyCardBinding implements Serializable {

    private static final long serialVersionUID = 1L;

    @Schema(description = "记录ID，自增主键")
//    @TableId(value = "id", type = IdType.AUTO)
    private String id;

    @Schema(description = "用户id")
//    @TableField("user_id")
    private String userId;

    @Schema(description = "数据表来源 批发商user，商家shop")
    @TableField("source")
    private String source;

    @Schema(description = "状态（0正常, 1删除）")
    @TableField("status")
    private Integer status;

    @Schema(description = "交易网会员id：u15")
    @TableField("tran_net_member_code")
    private String tranNetMemberCode;

    @Schema(description = "客户的真实姓名")
    @TableField("member_name")
    private String memberName;

    @Schema(description = "客户的证件类型(如身份证、护照等)")
    @TableField("member_global_type")
    private String memberGlobalType;

    @Schema(description = "客户的证件号码")
    @TableField("member_global_id")
    private String memberGlobalId;

    @Schema(description = "客户的银行卡号")
    @TableField("member_acct_no")
    private String memberAcctNo;

    @Schema(description = "银行的类型(1、本行 2、他行)")
    @TableField("bank_type")
    private String bankType;

    @Schema(description = "开户行的名称")
    @TableField("acct_open_branch_name")
    private String acctOpenBranchName;

    @Schema(description = "大小额行号")
    @TableField("cnaps_branch_id")
    private String cnapsBranchId;

    @Schema(description = "超级网银行号")
    @TableField("eicon_bank_branch_id")
    private String eiconBankBranchId;

    @Schema(description = "银行预留手机号码")
    @TableField("mobile")
    private String mobile;

    @Schema(description = "是否个体工商户(1:是 2:否)")
    @TableField("indiv_business_flag")
    private Integer indivBusinessFlag;

    @Schema(description = "公司名称(个体工商户或企业时填写)")
    @TableField("company_name")
    private String companyName;

    @Schema(description = "公司证件类型(如营业执照等)")
    @TableField("company_global_type")
    private String companyGlobalType;

    @Schema(description = "公司证件号码")
    @TableField("company_global_id")
    private String companyGlobalId;

    @Schema(description = "店铺id,个体工商户必输，可与交易网会员代码相同:例u15,s12")
    @TableField("shop_id")
    private String shopId;

    @Schema(description = "店铺名称")
    @TableField("shop_name")
    private String shopName;

    @Schema(description = "会员是否法人(1:是 2：否)")
    @TableField("rep_flag")
    private Integer repFlag;

    @Schema(description = "法人名称(如会员是法人时填写)")
    @TableField("repr_name")
    private String reprName;

    @Schema(description = "法人证件类型")
    @TableField("repr_global_type")
    private String reprGlobalType;

    @Schema(description = "法人证件号码")
    @TableField("repr_global_id")
    private String reprGlobalId;

    @Schema(description = "保留")
    @TableField("reserved_msg")
    private String reservedMsg;

    @Schema(description = "创建时间")
    @TableField("add_time")
    private String addTime;

    @Schema(description = "更新时间")
    @TableField("upd_time")
    private String updTime;

    @Schema(description = "是否存在经办人 1：是 2：否（企业必输，个纯个人与个体工商户无需填写）")
    @TableField("agency_client_flag")
    private Integer agencyClientFlag;

    @Schema(description = "经办人姓名")
    @TableField("agency_client_name")
    private String agencyClientName;

    @Schema(description = "是否存在经办人AgencyClientFlag=1时必输，仅支持1-身份证")
    @TableField("agency_client_global_type")
    private Integer agencyClientGlobalType;

    @Schema(description = "是否存在经办人AgencyClientFlag=1时必输，短信指令号优先发送至此手机号")
    @TableField("agency_client_mobile")
    private String agencyClientMobile;

    @Schema(description = "是否存在经办人AgencyClientFlag=1时必输,经办人证件号")
    @TableField("agency_client_globalId")
    private String agencyClientGlobalId;

    @Schema(description = "绑定状态(-1:失败；0:未绑定；1:成功)")
    @TableField("bind_flag")
    private String bindFlag;

    @Schema(description = "成功流水号")
    @TableField("cnsmr_seq_no")
    private String CnsmrSeqNo;

    @Schema(description = "交易日期")
    @TableField("tran_date")
    private String tranDate;


    @Schema(description = "交易前置流水号")
    @TableField("front_seq_no")
    private String frontSeqNo;

}
